# Makefile

# 定义编译器
CC = gcc-13

# 定义优化选项
OPT = -O2
DBG =

# 定义编译选项
CFLAGS = -march=rv64gcv $(OPT) $(DBG) -static

# 定义链接选项
LDFLAGS = -lm -static

# 定义源文件和目标文件
SRCS = main.c scal.c vec.c
OBJS = $(SRCS:.c=.o)

# 定义可执行文件的名称
TARGET = a.out

# 默认目标
all: $(TARGET)

# 链接目标文件生成可执行文件
$(TARGET): $(OBJS)
	$(CC) $(CFLAGS) $^ -o $@ $(LDFLAGS)

# 编译源文件为对象文件
%.o: %.c
	$(CC) $(CFLAGS) -c $< -o $@

# 清理编译生成的文件
clean:
	rm -f $(OBJS) $(TARGET)

# 伪目标
.PHONY: all clean